import request from '@/router/axios';
import Mock, { mock } from 'mockjs'; 
import { Random } from 'mockjs';

let i = '';
Random.extend({
    idFn:function(){
        i = Math.floor(Math.random() * 7)
        return i
    },
    nameList:function(){
        if(i==1){
            let arr = [
                '可减550【24期免息送碎屏宝】OnePlus一加9RT 5g手机新款一加官方旗舰店正品高通骁龙888游戏机9pro学生1+9rt',
                'Huawei/华为 Mate 20全网通4gMate20pro曲面屏 mate10 pro手机',
                '【24期免息 限时特惠100元】vivo S12新品5G游戏拍照轻薄手机vivo官方旗舰店官网正品新款vivos12 s12手机s10',
                'OnePlus/一加10Pro 5G智能手机官方5g新品游戏手机1+10pro旗舰店',
                'Apple/苹果 iPhone 13 Pro苹果13mini Pro13Promax国行正品5G手机',,
            ]
            return this.pick(arr)
        }else if(i==2){
            let arr = [
                '【官方正品】TOM FORD黑管TF口红大牌正品哑光16 100奶茶色',
                '【直播专享】MAC/魅可尤雾弹口红唇膏哑光显白女316/925/豆沙色',
                '尤莉尤拉限定细管口红四支装显色饱满持久不易掉色防水不沾杯唇膏',
                'AKF唇泥m01唇釉雾面哑光显白唇彩口红素颜学生平价小巧m07m08m09',
            ]
            return this.pick(arr)
        }else if(i==3){
            let arr = [
                '尊贵BCD-210CV卧式橱柜四门抽屉柜式自由嵌入式家用小型矮电冰箱',
                '海尔电冰箱335升一级双变频无霜节能多四开门大容量家用官方旗舰',
                'Amoi/夏新电热水器家用卫生间小型储水式速热洗澡淋浴40/50/60升L',
                '格林姆斯即热式电热水器家用卫生间快速热恒温洗澡过水热小型淋浴',
            ]
            return this.pick(arr)
        }else if(i==4){
            let arr = [
                '【王一博同款】安踏男鞋AT91弹射力科技休闲鞋官网新款厚底老爹鞋',
                'BALENCIAGA巴黎世家TRIPLE S 女士做旧质感品牌标识低帮老爹鞋',
                '回力爆改女鞋复古德训鞋2022春夏新款加绒小熊百搭休闲双绑带板鞋',
            ]
            return this.pick(arr)
        }else if(i==5){
            let arr = [
                '天使之翼手链女纯银高级感手镯轻奢小众女士手饰情人节礼物送女友',
                '新款黄金项链女款999足金天鹅套链3D硬金吊坠锁骨链颈链珠宝首饰',
                '黄金项链女5G金猪鼻子素链足金lucky颈饰纯金首饰送女友老婆礼物',
            ]
            return this.pick(arr)
        }else if(i==6){
            let arr = [
                '【春日焕新肌】HR赫莲娜活颜修护舒缓面膜补水保湿舒缓修护冻膜',
                '淮树化妆品正品旗舰金银花百日维新魔法童颜套盒面膜槐树护肤品',
                'Fresh馥蕾诗古源白松露珍萃修护睡眠面膜贵妇抗皱',
            ]
            return this.pick(arr)
        }
    }
})


let list = Mock.mock({
    "tableList|80-100":[
        {
            'id|1-899':3000,
            name:"@nameList()",
            nameId:"@idFn()",  //商品分类id
            "price1|600-5000": 1,   //原价
            "price2|300-4500": 1,   //秒杀价
            "remainNum|80-120":1,       //剩余数量
            "sesNum|1-19":1,        // 秒杀数量
            num:1,                 //限购数量
            "cat_id|1-3":1,           // 场次id
        }
    ]
})
// 获取秒杀商品数量
export const sesGdNumList = (data) =>request({
    url:'/sesGdNumList',
    method:'get',
    data
})
Mock.mock(/\/sesGdNumList/,config=>{
    let {nameId} = JSON.parse(config.body);
    let _list = list.tableList;
    let arr=[];
    //返回当前页数的对应的pagesize数量的数据
    if(nameId){
        for(let i=1; i<4;i++){
            let user = _list.filter((item,index)=>item.nameId==nameId && item.cat_id==i);
            let num = user.length;
            arr.push({num})
        }
        return {
            data:{
                arr
            },
            meta:{
                msg:'请求成功',
                status:200
            }
        }
    }else{
        return {
            meta:{
                msg:'获取失败',
                status:400
            }
        }
    }
})

// 获取秒杀商品列表
export const sesGdList = (data) =>request({
    url:'/sesGdList',
    method:'get',
    data
})
Mock.mock(/\/sesGdList/,config=>{
    let {nameId,cat_id} = JSON.parse(config.body);
    let _list = list.tableList;
    //返回当前页数的对应的pagesize数量的数据
    if(cat_id && nameId){
        let user = _list.filter((item,index)=>item.nameId==nameId && item.cat_id==cat_id);
        let total = user.length
        return {
            data:{
                user,total
            },
            meta:{
                msg:'请求成功',
                status:200
            }
        }
    }else{
        return {
            meta:{
                msg:'获取失败',
                status:400
            }
        }
    }
})

//添加商品
export const addsesGd = (data) =>request({
    url:'/addsesGd',
    mothed:'post',
    data
});
Mock.mock(/\/addsesGd/,config=>{
    let datas = JSON.parse(config.body)
    let {nameId,cat_id} = datas;
    let _list = list.tableList;
    var ids = Mock.mock({"id|900-999":1000})
    // if(id && cat_id){
    //     for(let item of _list){
    //         if(itemm.id==id){
    //             item.cat_id = cat_id
    //         }
    //     }
    //     return {
    //         meta:{
    //             msg:'添加成功',
    //             status:200
    //         }
    //     }
    // }else{
    //     return {
    //         meta:{
    //             msg:'添加失败',
    //             status:400
    //         }
    //     }
    // }
    if(nameId && cat_id){
        _list.unshift({
            id:ids.id,
            name:datas.name?datas.name:'',
            nameId,
            price1:datas.price1?datas.price1:'', 
            price2: datas.price2?datas.price2:'',  
            remainNum:datas.remainNum?datas.remainNum:'',      
            sesNum:datas.sesNum?datas.sesNum:'',        
            num:datas.num?datas.num:'',                
            cat_id, 
        })
        return {
            meta:{
                msg:'添加成功',
                status:200
            }
        }
    }else{
        return {
            meta:{
                msg:'添加失败，参数错误',
                status:400
            }
        }       
    }  
})

//删除数据
export const detsesGd = (data) =>request({
    url:'/detsesGd',
    mothed:'delete',
    data
})
Mock.mock(/\/detsesGd/,config=>{
    let {id} = JSON.parse(config.body);
    let _list = list.tableList;
    if(id){
        for(let index in _list){
            if(_list[index].id==id){
                _list.splice(index,1)
            }
        }
        return {
            meta:{
                msg:'删除成功',
                status:200
            }
        }
    }else{
        return {
            meta:{
                msg:'删除失败',
                status:400
            }
        }
    }
    
})

// 修改数据
export const editsesGd = (data) =>request({
    url:'/editsesGd',
    mothed:'put',
    data
})
Mock.mock(/\/editsesGd/,config=>{
    let datas = JSON.parse(config.body);
    let {id} = datas;
    let _list = list.tableList;
    if(id){
        //name  price2  sesNum num
        if(datas.name || datas.price2 || datas.sesNum || datas.num){
            for(let item of _list){
                if(item.id==id){
                    item.name = datas.name?datas.name:item.name;
                    item.price2 = datas.price2?datas.price2:item.price2
                    item.sesNum = datas.sesNum?datas.sesNum:item.sesNum;
                    item.num = datas.num?datas.num:item.num
                }
            }
        }
        return {
            meta:{
                msg:'修改成功',
                status:200
            }
        }
    }else{
        return {
            meta:{
                msg:'参数错误',
                status:400
            }
        }
    }
   
})